1. Field of the Invention
The present invention relates to computer security systems. In particular, the present invention is a computer security system of the type having a master security control processor adapted to interface a central computer to a data transmission path, and at least one slave security control processor adapted to interface an interactive terminal to the data transmission path. The master and slave security control processors interact with each other to prevent unauthorized access to the central computer, and to secure data transmitted therebetween.
2. Description of the Prior Art
Distributed computer systems with remotely located interactive terminals are in widespread use. Governmental agencies, financial institutions and other businesses regularly use systems of this type for the communication of proprietary information. Since this information is typically transmitted over commercial telephone lines, standard radio links, and microwave channels in these systems, literally anyone may listen in on masses of sensitive information without being detected. Prior art security systems used to secure this information during transmission through the hostile environments have in general been elaborate, expensive and ineffective.
The Beitel et al U.S. Pat. No. 4,430,728 discloses a computer terminal security system which includes a dialer/transmitter circuit positioned between a remote terminal and a calling modem, and a receiver/checker which is positioned between a called modem and host computer. In order to access the host computer with a remote terminal, an operator must insert a memory key into the dialer/transmitter. The memory key contains a secret phone number which the dialer/transmitter dials in order to interconnect the remote terminal with the receiver/checker. Once the remote termminal is interconnected with the receiver/checker, a user identification code, also encoded on the key, is transmitted. Only after the user identification code is verified by the receiver/checker is the remote terminal connected to the host computer for data transmission.
The Check, Jr. U.S. Pat. No. 4,310,720 discloses a computer accessing system which includes a portable access unit which controls access to the main computer. The access unit generates a non-recurring access code which is a function of a user identification password entered into a terminal, and a random number generated by an encoder-decoder within the access unit. Only when the generated access code corresponds to an identical code generated by the main computer is a communications link established. Data transmitted between the terminal and computer are encrypted by the access unit in accordance with one of several different encryption techniques.
The Caudill et al U.S. Pat. No. 3,984,637 discloses a computer terminal security system in which a code transmitter and local code unit are positioned and interconnected between a remote terminal and terminal modems. An operator must first enter a first code which is compared to a code stored within the local code unit. Only when these codes match is the terminal interconnected with the modem. The code transmitter then transmits a code stored within the unit to the code receiver. If the code transmitted by the code transmitter corresponds to the code stored within the code receiver, the terminal is permitted to access the computer.
The Thomas U.S. Pat. No. 4,446,519 describes a method and apparatus for providing security for computer software. A software purchaser is provided with an electronic security device which is a circuit element plugged into a computer executing the software. The software and electronic security device exchange codes which must be properly recognized before the computer will execute the software.
The Morgan et al U.S. Pat. No. 4,349,695 discloses a system and method for identifying a remote terminal user and for identifying a message received from the terminal. An operator will indicate a desired recipient through one of a plurality of terminals. A CPU causes an autodialer to dial the recipient and establishes access to an outgoing line. An authenticator then authenticates whether or not the right recipient has been reached. This function is performed by enciphering a random character and transmitting it to the message recipient. Only if the message recipient properly deciphers the randomized character and transmits the randomized character back to the authenticator is communications continued. All data transmitted between the CPU and message recipient is also enciphered.
The Sendrow U.S. Pat. No. 4,317,957 discloses a system for authenticating users and devices in on-line transaction networks. At a remote terminal an operator will insert a card and enter a personal identification number. All information including request message, account number and other data are encoded by a multi-level encryption technique before being communicated to the main financial computer.
The Atalla U.S. Pat. No. 4,304,990 discloses a multi-level security apparatus and method for use with card-operated banking equipment. Information stored on the card and entered by the operator at the remote terminal including a personal identification number, bank identification number, and account number, are encrypted to produce a first code word or Offset I. All information used to produce this first level is therefore secured prior to any transmission. A second code word or Offset II is generated at a second security level using Offset I and a secret bank number. Similarly, a third level code or Offset III is generated by using Offset II and a card serial number.
The Bright et al U.S. Pat. No. 4,262,329 discloses a security system for data processing. Encrypted information is communicated between two computers. Encryption and decryption are performed by a computer within a hard-node which is maintained under a high degree of security. All confidential data base information is stored within the hard-node.
The Thomas U.S. Pat. No. 4,246,638 discloses a method and apparatus for controlling usage of a programmable computing machine. This is accomplished by encoding the operation codes of program instructions. The encoding is done as a function of the location of the instructions in memory and as a function of machine state. Circuits for encoding and decoding the operation codes in accordance with the method are described.
The Hashimoto U.S. Pat. No. 4,246,442 discloses a method and device for confirming correct information between data terminals using a telephone network. Once a communication line is established between the two terminals, an acknowledgement signal is transmitted from the called to the calling terminal. The identification code of the called terminal is then transmitted from the calling to the called terminal. The called terminal compares the received identification code with its own identification code. If an unfavorable comparison is made, the communication link is broken. If the comparison is favorable, the called terminal transmits its own code to the calling terminal. The calling terminal then compares the received code of the called terminal with the code of the called terminal previously stored at the calling terminal. Only if a favorable comparison is made is data transmitted between the terminals.
The Matyas et al U.S. Pat. No. 4,218,738 discloses a method for authenticating the identity of a potential computer user based on a comparison of information submitted by the potential user with information stored in the computer system. The potential use will enter an identification number and password at a terminal. The terminal then generates an authentication pattern which is a function of these two pieces of information. The authentication pattern is communicated to the main computer to verify the user identification.
The Attanasio U.S. Pat. No. 4,087,856 describes a computer operating system security mechanism. Both hardware and software are used to prevent a computer operator from branching outside predetermined bounds within the computer architecture.
The popularity of personal computers has greatly increased the computer security problem. Through personal computers, users are able to gain access to data bases, program libraries and other confidential information over commercial telephone lines. Although the National Bureau of Standards adopted a data encryption format using a 56-bit key to map one 64-bit word into another, personal computers can break this key, decode the confidential data and/or enter and encode their own data.
It is evident that there is a continuing need for improved computer security systems. An effective and economical computer security system which includes a master unit for interfacing a central computer to a data transmission path, and slave units for interfacing each of a plurality of interactive terminals to the transmission path, is preferred. The computer security system should be capable of implementing several security levels to prevent access to the central computer by unauthorized operators or slave units. Each slave unit should, therefore, be assigned a unique slave unit identification code and sync code. Security can be increased if the sync code must be properly received during a predetermined sync window.
A computer security system which is capable of destroying sensitive data used therein when unauthorized access attempts are detected would also increase security. Code words and encryption keys used by the security system should be stored in erasable memory. The computer security system could then erase the sensitive data in slave units which have been denied access to the system, and when physical tampering thereto is detected.